<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>LibQQt: QextSerialBase Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">LibQQt
   &#160;<span id="projectnumber">v3.1</span>
   </div>
   <div id="projectbrief">开源、跨平台Qt应用程序框架中间件</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#signals">Signals</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="class_qext_serial_base-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">QextSerialBase Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="qextserialbase_8h_source.html">qextserialbase.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for QextSerialBase:</div>
<div class="dyncontent">
 <div class="center">
  <img src="class_qext_serial_base.png" usemap="#QextSerialBase_map" alt=""/>
  <map id="QextSerialBase_map" name="QextSerialBase_map">
<area href="class_posix___qext_serial_port.html" alt="Posix_QextSerialPort" shape="rect" coords="0,112,131,136"/>
<area href="class_win___qext_serial_port.html" alt="Win_QextSerialPort" shape="rect" coords="141,112,272,136"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:abab21776f71ceb4989ad2326680143f5"><td class="memItemLeft" align="right" valign="top"><a id="abab21776f71ceb4989ad2326680143f5"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>QueryMode</b> { <b>Polling</b>, 
<b>EventDriven</b>
 }</td></tr>
<tr class="separator:abab21776f71ceb4989ad2326680143f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="signals"></a>
Signals</h2></td></tr>
<tr class="memitem:abc9dc7c9a7735476800eb5aa35bec6a8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#abc9dc7c9a7735476800eb5aa35bec6a8">dsrChanged</a> (bool status)</td></tr>
<tr class="separator:abc9dc7c9a7735476800eb5aa35bec6a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aba0fc6d8b5c675c91ebff90fc6415748"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#aba0fc6d8b5c675c91ebff90fc6415748">QextSerialBase</a> ()</td></tr>
<tr class="separator:aba0fc6d8b5c675c91ebff90fc6415748"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a136b187c6684be0bac22e616b053f7b7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a136b187c6684be0bac22e616b053f7b7">QextSerialBase</a> (const QString &amp;name)</td></tr>
<tr class="separator:a136b187c6684be0bac22e616b053f7b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80eeebbf4585220ec3ced8fcebf6279f"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a80eeebbf4585220ec3ced8fcebf6279f">~QextSerialBase</a> ()</td></tr>
<tr class="separator:a80eeebbf4585220ec3ced8fcebf6279f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7495b472b5e269d04c0c2e856901207f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a7495b472b5e269d04c0c2e856901207f">construct</a> ()</td></tr>
<tr class="separator:a7495b472b5e269d04c0c2e856901207f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c9f83f00f0ea53ee06b757e197cdf64"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a1c9f83f00f0ea53ee06b757e197cdf64">setPortName</a> (const QString &amp;name)</td></tr>
<tr class="separator:a1c9f83f00f0ea53ee06b757e197cdf64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ec73bcceef66b910bd42a1ab0b6b66f"><td class="memItemLeft" align="right" valign="top">virtual QString&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a5ec73bcceef66b910bd42a1ab0b6b66f">portName</a> () const</td></tr>
<tr class="separator:a5ec73bcceef66b910bd42a1ab0b6b66f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87c78f3a69a8576b9c6a6e4c7318d70a"><td class="memItemLeft" align="right" valign="top">QextSerialBase::QueryMode&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a87c78f3a69a8576b9c6a6e4c7318d70a">queryMode</a> () const</td></tr>
<tr class="separator:a87c78f3a69a8576b9c6a6e4c7318d70a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd8e3b9a5028f9c2645ba89c0fc08a6b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#abd8e3b9a5028f9c2645ba89c0fc08a6b">setQueryMode</a> (QueryMode mode)</td></tr>
<tr class="separator:abd8e3b9a5028f9c2645ba89c0fc08a6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05b59a48366ae452bf8e033f83402543"><td class="memItemLeft" align="right" valign="top"><a id="a05b59a48366ae452bf8e033f83402543"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>setBaudRate</b> (BaudRateType)=0</td></tr>
<tr class="separator:a05b59a48366ae452bf8e033f83402543"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab85f4bc317e0b03205f4360529d8caf3"><td class="memItemLeft" align="right" valign="top">virtual BaudRateType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#ab85f4bc317e0b03205f4360529d8caf3">baudRate</a> () const</td></tr>
<tr class="separator:ab85f4bc317e0b03205f4360529d8caf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a651f67ec7818b55c0053b47546c56ab5"><td class="memItemLeft" align="right" valign="top"><a id="a651f67ec7818b55c0053b47546c56ab5"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>setDataBits</b> (DataBitsType)=0</td></tr>
<tr class="separator:a651f67ec7818b55c0053b47546c56ab5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afebe4d557c5c944ccd1039cee91871fd"><td class="memItemLeft" align="right" valign="top">virtual DataBitsType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#afebe4d557c5c944ccd1039cee91871fd">dataBits</a> () const</td></tr>
<tr class="separator:afebe4d557c5c944ccd1039cee91871fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad57f8cb19a8a48012c1f607155eddedf"><td class="memItemLeft" align="right" valign="top"><a id="ad57f8cb19a8a48012c1f607155eddedf"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>setParity</b> (ParityType)=0</td></tr>
<tr class="separator:ad57f8cb19a8a48012c1f607155eddedf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b35a11a804f9ee86b07db8a5b5bc0ee"><td class="memItemLeft" align="right" valign="top">virtual ParityType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a7b35a11a804f9ee86b07db8a5b5bc0ee">parity</a> () const</td></tr>
<tr class="separator:a7b35a11a804f9ee86b07db8a5b5bc0ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afafca39575da5ab668671bff89fdd4bc"><td class="memItemLeft" align="right" valign="top"><a id="afafca39575da5ab668671bff89fdd4bc"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>setStopBits</b> (StopBitsType)=0</td></tr>
<tr class="separator:afafca39575da5ab668671bff89fdd4bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d0d52efbebaa1d832bb9c9b2c40532f"><td class="memItemLeft" align="right" valign="top">virtual StopBitsType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a9d0d52efbebaa1d832bb9c9b2c40532f">stopBits</a> () const</td></tr>
<tr class="separator:a9d0d52efbebaa1d832bb9c9b2c40532f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a976c031b3a51bc71abe7804953e0d366"><td class="memItemLeft" align="right" valign="top"><a id="a976c031b3a51bc71abe7804953e0d366"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>setFlowControl</b> (FlowType)=0</td></tr>
<tr class="separator:a976c031b3a51bc71abe7804953e0d366"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a099a89f5492e6ff387dd29132cc3ccd0"><td class="memItemLeft" align="right" valign="top">virtual FlowType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a099a89f5492e6ff387dd29132cc3ccd0">flowControl</a> () const</td></tr>
<tr class="separator:a099a89f5492e6ff387dd29132cc3ccd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d4a390ed7ac53d920855a820449a6d1"><td class="memItemLeft" align="right" valign="top"><a id="a3d4a390ed7ac53d920855a820449a6d1"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>setTimeout</b> (long)=0</td></tr>
<tr class="separator:a3d4a390ed7ac53d920855a820449a6d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a754cf108d4b7114b1dd538ef6dd65d1a"><td class="memItemLeft" align="right" valign="top"><a id="a754cf108d4b7114b1dd538ef6dd65d1a"></a>
virtual bool&#160;</td><td class="memItemRight" valign="bottom"><b>open</b> (OpenMode mode)=0</td></tr>
<tr class="separator:a754cf108d4b7114b1dd538ef6dd65d1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae92ca5d58748d206a379f063e6412f17"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#ae92ca5d58748d206a379f063e6412f17">isSequential</a> () const</td></tr>
<tr class="separator:ae92ca5d58748d206a379f063e6412f17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a4aea428bc05a88f86849bb7478c082"><td class="memItemLeft" align="right" valign="top"><a id="a2a4aea428bc05a88f86849bb7478c082"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>close</b> ()=0</td></tr>
<tr class="separator:a2a4aea428bc05a88f86849bb7478c082"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58df9d786aa70dfe9f547d4118103f39"><td class="memItemLeft" align="right" valign="top"><a id="a58df9d786aa70dfe9f547d4118103f39"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>flush</b> ()=0</td></tr>
<tr class="separator:a58df9d786aa70dfe9f547d4118103f39"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86fc9d6239b7d136a9d80b93a727e093"><td class="memItemLeft" align="right" valign="top"><a id="a86fc9d6239b7d136a9d80b93a727e093"></a>
virtual qint64&#160;</td><td class="memItemRight" valign="bottom"><b>size</b> () const =0</td></tr>
<tr class="separator:a86fc9d6239b7d136a9d80b93a727e093"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e130a0ba5a0a9ba95ce5f75a5e2c526"><td class="memItemLeft" align="right" valign="top"><a id="a7e130a0ba5a0a9ba95ce5f75a5e2c526"></a>
virtual qint64&#160;</td><td class="memItemRight" valign="bottom"><b>bytesAvailable</b> ()=0</td></tr>
<tr class="separator:a7e130a0ba5a0a9ba95ce5f75a5e2c526"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06cb503e03af3a372abc715ac7fbb63c"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a06cb503e03af3a372abc715ac7fbb63c">atEnd</a> () const</td></tr>
<tr class="separator:a06cb503e03af3a372abc715ac7fbb63c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4564cb1b1fdfb317e6a12cb5b351adf"><td class="memItemLeft" align="right" valign="top"><a id="ad4564cb1b1fdfb317e6a12cb5b351adf"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>ungetChar</b> (char c)=0</td></tr>
<tr class="separator:ad4564cb1b1fdfb317e6a12cb5b351adf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee681a896845c9594c84dcd47d7eb566"><td class="memItemLeft" align="right" valign="top">virtual qint64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#aee681a896845c9594c84dcd47d7eb566">readLine</a> (char *data, qint64 maxSize)</td></tr>
<tr class="separator:aee681a896845c9594c84dcd47d7eb566"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5889db7f578e11db0c7980de3720deea"><td class="memItemLeft" align="right" valign="top">virtual ulong&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_qext_serial_base.html#a5889db7f578e11db0c7980de3720deea">lastError</a> () const</td></tr>
<tr class="separator:a5889db7f578e11db0c7980de3720deea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9c2e9272cff3bd576560335308a8033"><td class="memItemLeft" align="right" valign="top"><a id="aa9c2e9272cff3bd576560335308a8033"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>translateError</b> (ulong error)=0</td></tr>
<tr class="separator:aa9c2e9272cff3bd576560335308a8033"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14c7fc36f9e7b7e5a9e798c2c1b35505"><td class="memItemLeft" align="right" valign="top"><a id="a14c7fc36f9e7b7e5a9e798c2c1b35505"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>setDtr</b> (bool set=true)=0</td></tr>
<tr class="separator:a14c7fc36f9e7b7e5a9e798c2c1b35505"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa23d343095f16e7d7b37e7b61022b3a"><td class="memItemLeft" align="right" valign="top"><a id="aaa23d343095f16e7d7b37e7b61022b3a"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>setRts</b> (bool set=true)=0</td></tr>
<tr class="separator:aaa23d343095f16e7d7b37e7b61022b3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28b87dd41160a61e2953dca38aa332d6"><td class="memItemLeft" align="right" valign="top"><a id="a28b87dd41160a61e2953dca38aa332d6"></a>
virtual ulong&#160;</td><td class="memItemRight" valign="bottom"><b>lineStatus</b> ()=0</td></tr>
<tr class="separator:a28b87dd41160a61e2953dca38aa332d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:ad36903893a43ad4468e25243117dea73"><td class="memItemLeft" align="right" valign="top"><a id="ad36903893a43ad4468e25243117dea73"></a>
virtual qint64&#160;</td><td class="memItemRight" valign="bottom"><b>readData</b> (char *data, qint64 maxSize)=0</td></tr>
<tr class="separator:ad36903893a43ad4468e25243117dea73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39a3aaff93640b767fd44dd7ce705e01"><td class="memItemLeft" align="right" valign="top"><a id="a39a3aaff93640b767fd44dd7ce705e01"></a>
virtual qint64&#160;</td><td class="memItemRight" valign="bottom"><b>writeData</b> (const char *data, qint64 maxSize)=0</td></tr>
<tr class="separator:a39a3aaff93640b767fd44dd7ce705e01"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a0c7cf6443ad80a05d51daaca5d0102ab"><td class="memItemLeft" align="right" valign="top"><a id="a0c7cf6443ad80a05d51daaca5d0102ab"></a>
QMutex *&#160;</td><td class="memItemRight" valign="bottom"><b>mutex</b></td></tr>
<tr class="separator:a0c7cf6443ad80a05d51daaca5d0102ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7459f3818391091877c88595a48a950a"><td class="memItemLeft" align="right" valign="top"><a id="a7459f3818391091877c88595a48a950a"></a>
QString&#160;</td><td class="memItemRight" valign="bottom"><b>port</b></td></tr>
<tr class="separator:a7459f3818391091877c88595a48a950a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d796e3080f78ff63e821f528439db57"><td class="memItemLeft" align="right" valign="top"><a id="a2d796e3080f78ff63e821f528439db57"></a>
<a class="el" href="struct_port_settings.html">PortSettings</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Settings</b></td></tr>
<tr class="separator:a2d796e3080f78ff63e821f528439db57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31816951ba89902fa1dfdb6f18b80f41"><td class="memItemLeft" align="right" valign="top"><a id="a31816951ba89902fa1dfdb6f18b80f41"></a>
ulong&#160;</td><td class="memItemRight" valign="bottom"><b>lastErr</b></td></tr>
<tr class="separator:a31816951ba89902fa1dfdb6f18b80f41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67f8a0fb2ce91824c1afc6c95e6b3c3a"><td class="memItemLeft" align="right" valign="top"><a id="a67f8a0fb2ce91824c1afc6c95e6b3c3a"></a>
QextSerialBase::QueryMode&#160;</td><td class="memItemRight" valign="bottom"><b>_queryMode</b></td></tr>
<tr class="separator:a67f8a0fb2ce91824c1afc6c95e6b3c3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><dl class="section author"><dt>Author</dt><dd>Stefan Sander </dd>
<dd>
Michal Policht</dd></dl>
<p>A common base class for Win_QextSerialBase, Posix_QextSerialBase and <a class="el" href="class_qext_serial_port.html">QextSerialPort</a>. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="aba0fc6d8b5c675c91ebff90fc6415748"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba0fc6d8b5c675c91ebff90fc6415748">&#9670;&nbsp;</a></span>QextSerialBase() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">QextSerialBase::QextSerialBase </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Default constructor. </p>

</div>
</div>
<a id="a136b187c6684be0bac22e616b053f7b7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a136b187c6684be0bac22e616b053f7b7">&#9670;&nbsp;</a></span>QextSerialBase() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">QextSerialBase::QextSerialBase </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Construct a port and assign it to the device specified by the name parameter. </p>

</div>
</div>
<a id="a80eeebbf4585220ec3ced8fcebf6279f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a80eeebbf4585220ec3ced8fcebf6279f">&#9670;&nbsp;</a></span>~QextSerialBase()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">QextSerialBase::~QextSerialBase </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Standard destructor. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a06cb503e03af3a372abc715ac7fbb63c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a06cb503e03af3a372abc715ac7fbb63c">&#9670;&nbsp;</a></span>atEnd()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool QextSerialBase::atEnd </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function will return true if the input buffer is empty (or on error), and false otherwise. Call <a class="el" href="class_qext_serial_base.html#a5889db7f578e11db0c7980de3720deea">QextSerialBase::lastError()</a> for error information. </p>

</div>
</div>
<a id="ab85f4bc317e0b03205f4360529d8caf3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab85f4bc317e0b03205f4360529d8caf3">&#9670;&nbsp;</a></span>baudRate()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">BaudRateType QextSerialBase::baudRate </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the baud rate of the serial port. For a list of possible return values see the definition of the enum BaudRateType. </p>

</div>
</div>
<a id="a7495b472b5e269d04c0c2e856901207f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7495b472b5e269d04c0c2e856901207f">&#9670;&nbsp;</a></span>construct()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void QextSerialBase::construct </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Common constructor function for setting up default port settings. (115200 Baud, 8N1, Hardware flow control where supported, otherwise no flow control, and 0 ms timeout). </p>

</div>
</div>
<a id="afebe4d557c5c944ccd1039cee91871fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afebe4d557c5c944ccd1039cee91871fd">&#9670;&nbsp;</a></span>dataBits()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">DataBitsType QextSerialBase::dataBits </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the number of data bits used by the port. For a list of possible values returned by this function, see the definition of the enum DataBitsType. </p>

</div>
</div>
<a id="abc9dc7c9a7735476800eb5aa35bec6a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc9dc7c9a7735476800eb5aa35bec6a8">&#9670;&nbsp;</a></span>dsrChanged</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void QextSerialBase::dsrChanged </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>status</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">signal</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This signal is emitted whenever port settings are updated. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">valid</td><td><code>true</code> if settings are valid, <code>false</code> otherwise.</td></tr>
  </table>
  </dd>
</dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>implement. </dd></dl>
<p>This signal is emitted whenever dsr line has changed its state. You may use this signal to check if device is connected. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">status</td><td><code>true</code> when DSR signal is on, <code>false</code> otherwise.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd>lineStatus(). </dd></dl>

</div>
</div>
<a id="a099a89f5492e6ff387dd29132cc3ccd0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a099a89f5492e6ff387dd29132cc3ccd0">&#9670;&nbsp;</a></span>flowControl()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">FlowType QextSerialBase::flowControl </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the type of flow control used by the port. For a list of possible values returned by this function, see the definition of the enum FlowType. </p>

</div>
</div>
<a id="ae92ca5d58748d206a379f063e6412f17"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae92ca5d58748d206a379f063e6412f17">&#9670;&nbsp;</a></span>isSequential()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool QextSerialBase::isSequential </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns true if device is sequential, otherwise returns false. Serial port is sequential device so this function always returns true. Check QIODevice::isSequential() documentation for more information. </p>

</div>
</div>
<a id="a5889db7f578e11db0c7980de3720deea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5889db7f578e11db0c7980de3720deea">&#9670;&nbsp;</a></span>lastError()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ulong QextSerialBase::lastError </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the code for the last error encountered by the port, or E_NO_ERROR if the last port operation was successful. Possible error codes are:</p>
<pre class="fragment">Error                           Explanation
---------------------------     -------------------------------------------------------------
E_NO_ERROR                      No Error has occured
E_INVALID_FD                    Invalid file descriptor (port was not opened correctly)
E_NO_MEMORY                     Unable to allocate memory tables (POSIX)
E_CAUGHT_NON_BLOCKED_SIGNAL     Caught a non-blocked signal (POSIX)
E_PORT_TIMEOUT                  Operation timed out (POSIX)
E_INVALID_DEVICE                The file opened by the port is not a character device (POSIX)
E_BREAK_CONDITION               The port detected a break condition
E_FRAMING_ERROR                 The port detected a framing error
                                (usually caused by incorrect baud rate settings)
E_IO_ERROR                      There was an I/O error while communicating with the port
E_BUFFER_OVERRUN                Character buffer overrun
E_RECEIVE_OVERFLOW              Receive buffer overflow
E_RECEIVE_PARITY_ERROR          The port detected a parity error in the received data
E_TRANSMIT_OVERFLOW             Transmit buffer overflow
E_READ_FAILED                   General read operation failure
E_WRITE_FAILED                  General write operation failure
</pre> 
</div>
</div>
<a id="a7b35a11a804f9ee86b07db8a5b5bc0ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b35a11a804f9ee86b07db8a5b5bc0ee">&#9670;&nbsp;</a></span>parity()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">ParityType QextSerialBase::parity </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the type of parity used by the port. For a list of possible values returned by this function, see the definition of the enum ParityType. </p>

</div>
</div>
<a id="a5ec73bcceef66b910bd42a1ab0b6b66f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5ec73bcceef66b910bd42a1ab0b6b66f">&#9670;&nbsp;</a></span>portName()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">QString QextSerialBase::portName </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the name set by <a class="el" href="class_qext_serial_base.html#a1c9f83f00f0ea53ee06b757e197cdf64">setPortName()</a>. </p>

</div>
</div>
<a id="a87c78f3a69a8576b9c6a6e4c7318d70a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a87c78f3a69a8576b9c6a6e4c7318d70a">&#9670;&nbsp;</a></span>queryMode()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">QextSerialBase::QueryMode QextSerialBase::queryMode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>! Get query mode. </p><dl class="section return"><dt>Returns</dt><dd>query mode. </dd></dl>

</div>
</div>
<a id="aee681a896845c9594c84dcd47d7eb566"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee681a896845c9594c84dcd47d7eb566">&#9670;&nbsp;</a></span>readLine()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">qint64 QextSerialBase::readLine </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">qint64&#160;</td>
          <td class="paramname"><em>maxSize</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function will read a line of buffered input from the port, stopping when either maxSize bytes have been read, the port has no more data available, or a newline is encountered. The value returned is the length of the string that was read. </p>

</div>
</div>
<a id="a1c9f83f00f0ea53ee06b757e197cdf64"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1c9f83f00f0ea53ee06b757e197cdf64">&#9670;&nbsp;</a></span>setPortName()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void QextSerialBase::setPortName </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Sets the name of the device associated with the object, e.g. "COM1", or "/dev/ttyS0". </p>

</div>
</div>
<a id="abd8e3b9a5028f9c2645ba89c0fc08a6b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd8e3b9a5028f9c2645ba89c0fc08a6b">&#9670;&nbsp;</a></span>setQueryMode()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void QextSerialBase::setQueryMode </td>
          <td>(</td>
          <td class="paramtype">QueryMode&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Set desired serial communication handling style. You may choose from polling or event driven approach. This function does nothing when port is open; to apply changes port must be reopened.</p>
<p>In event driven approach read() and write() functions are acting asynchronously. They return immediately and the operation is performed in the background, so they doesn't freeze the calling thread. To determine when operation is finished, <a class="el" href="class_qext_serial_port.html">QextSerialPort</a> runs separate thread and monitors serial port events. Whenever the event occurs, adequate signal is emitted.</p>
<p>When polling is set, read() and write() are acting synchronously. Signals are not working in this mode and some functions may not be available. The advantage of polling is that it generates less overhead due to lack of signals emissions and it doesn't start separate thread to monitor events.</p>
<p>Generally event driven approach is more capable and friendly, although some applications may need as low overhead as possible and then polling comes.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">mode</td><td>query mode. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9d0d52efbebaa1d832bb9c9b2c40532f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d0d52efbebaa1d832bb9c9b2c40532f">&#9670;&nbsp;</a></span>stopBits()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">StopBitsType QextSerialBase::stopBits </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Returns the number of stop bits used by the port. For a list of possible return values, see the definition of the enum StopBitsType. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>R:/Develop/a0-develop/LibQQt/src/network/qextserialport/<a class="el" href="qextserialbase_8h_source.html">qextserialbase.h</a></li>
<li>R:/Develop/a0-develop/LibQQt/src/network/qextserialport/qextserialbase.cpp</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>
